草庐IT

Java Thread.sleep 最短时间

全部标签

c# - ManualResetEvent 与 Thread.Sleep

我实现了以下后台处理线程,其中Jobs是Queue:staticvoidWorkThread(){while(working){varjob;lock(Jobs){if(Jobs.Count>0)job=Jobs.Dequeue();}if(job==null){Thread.Sleep(1);}else{//[snip]:Processjob.}}}这在输入作业和实际开始运行之间产生了明显的延迟(一次性输入批量作业,每个作业只是[相对]小。)延迟不是很重要,但我开始考虑这个问题,并做了以下更改:staticManualResetEvent_workerWait=newManualRe

c++ - boost deadline_timer 最小示例 : should I substitute "sleep"?

我有一个线程,我需要每10毫秒执行一次操作。所以我有非常简单的代码,就像这样:while(work){//dosomethingSleep(10000);//boostsleepcanbealsoused}我听说一般不推荐使用Sleep,如果我用deadline_timer代替它,整体应用程序性能会更好,特别是我会避免昂贵的“上下文切换”.我应该将sleep更改为deadline_timer如果可以,有人可以举个例子吗? 最佳答案 这一切都取决于对10ms的要求。迭代之间延迟10毫秒如果应用程序需要在迭代之间有10毫秒的延迟,那么s

c++ - LPC1700不会从深度 sleep 中醒来

我的固件在LPC1754上运行、59和68+FreeRTOS+CMSIS。我希望能够将微Controller置于尽可能最低的功耗模式,但是:“sleep”是不够的。一旦微Controller处于“深度sleep”、“断电”或“深度断电”状态,我就无法再通过按下按钮(EINT3)将其唤醒。据我在“LPC17xxUsermanual”(第58、59页)中所读,我应该能够从EINT3唤醒到“掉电”模式。我错过了什么?是否在低功耗时产生中断?怎么说?我应该做任何特定的事情才能生成它吗?为了简化起见,我从内部RC运行,因此PLL勘误表不是问题。编辑:事实上,我正在为P2中的几个引脚使用“GPIO

c++ - 与 sleep() 相比,定时器有更好的精度吗?

很久以前,我的程序中有一个错误。根本原因是C函数sleep(60);在极少数情况下,sleep时间会少于60秒。或者该函数确实导致线程休眠超过60秒,但操作系统自动更改了时钟(这似乎很可能,因为错误仅发生在XX::00::00上),又名它很少出现,并且只在“整小时”出现(sleep应该在>xh0m0s结束,它在x-1h59m59.99*s结束)。然后我的项目经理继续咆哮,他说了上百万次我们应该只使用计时器,而不是sleep。从那时起,我就接受了定时器比sleep()更准确的观点,但现在我觉得我应该寻求一些更权威的来源。所以:计时器比sleep更精确吗?(相关)它们是否在深层(在操作系统

c++ - 为什么需要 sleep(1) 来让 socket 耗尽?

我下载了一个简单的静态网络服务器的源代码http://www.ibm.com/developerworks/systems/library/es-nweb/sidefile1.html但是,我对第130行感到困惑:#ifdefLINUXsleep(1);/*toallowsockettodrain*/#endifexit(1);既然套接字没有关闭,是否意味着我需要等待客户端关闭套接字? 最佳答案 无论作者的意图如何,它都是不必要的和不正确的。exit()就足够了。当在TCP套接字上调用close()或调用exit()终止进程时,除非

objective-c - 需要 iOS 引用以了解在 sleep 、待机和/或空闲模式下发生的情况

我是一名新的ObjC开发人员,在搜索了Web和Apple的开发人员文档之后,我找不到对各种iOS设备模式以及这些模式中发生的事情的简洁解释。我看到很多小的讨论,但没有关于大局的总体讨论。例如,我看到一些iPhone/iPad的警报应用程序声称能够在早上执行警报(大概不仅仅是系统警报)。我很难理解这是怎么发生的,即使用户让应用程序在一夜之间继续运行,假设设备在未使用后进入休眠模式。所以我不知道当设备进入休眠或待机模式时会发生什么。只是屏幕变暗了吗?前台的应用程序是否继续执行代码,进入某种临时状态(如保存状态下的后台模式),还是完全(即使是暂时的)关闭?我只想指向一个网站、一本书或Appl

ios - <Application_home>/Documents 中保存的文件在短时间后丢失

我有一个应用程序可以在应用程序的文档目录中保存图像(JPEG)和文本文件。我已经在xcode模拟器和两部iPhone(4和5,分别运行ios7.1和8.1)上对其进行了测试,它完全按预期工作,并且数据保存完好。然而,在将其提交到应用商店后,一位测试该应用的用户(使用iphone6、ios8.1)发现保存的数据大约每20分钟丢失一次。有谁知道这是为什么以及我该如何解决这个问题?将文件标记为“不备份”是否可以解决问题?作为引用,保存在NSUserDefaults中的数据将被保留。提前致谢。编辑----我应该提到我正在使用以下方法搜索文档目录:NSArray*paths=NSSearchPa

ios - sleep() 适用于 iOS 但不适用于 mac?

我有一个对辅助线程的dispatch_async调用,只是出于测试目的,我想让辅助线程休眠5秒。这是代码:dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0),^{sleep(5);});当我在MacOSXLion10.7.2上对此进行测试时,sleep()函数不会让线程进入休眠状态。在iPhone模拟器上使用相同的代码。在mac上,sleep在主线程上工作,在使用[NSThreadsleepUntilTimeInterval:]的辅助线程上也工作。为什么sleep()函数不能在mac上的

ios - 为什么 UITableViewCell 上的 UIButton 仅在触摸手势持续短时间时才会变暗

快速按下按钮而不是短时间按住,不会突出显示按钮。不同于普通UIView上的UIButton。像官方推特客户端的头像也出现了同样的问题。Instagram客户端似乎解决了这个问题,所有按钮都可以正常工作。在这里找到同样的问题:Whydoesn'tUIButtonshowsTouchWhenHighlightedworkwhenthebuttonisonaUITableViewCell?但我仍然不知道如何修复它。 最佳答案 嗯...UITableView是UIScrollView的子类,并且UIScrollView类以其自身目的吃触摸而

iOS startMonitoringForRegion 在 sleep 模式下不起作用(黑屏)

我正在尝试使用startMonitoringForRegion在iOS中为iPhone4编写一个应用程序,每次位置委托(delegate)收到位置更新时都会触发本地通知。只要手机处于唤醒状态(屏幕亮起),应用程序运行良好,会触发通知,但是当我将手机置于sleep状态(屏幕为黑色)时,我不再收到通知,直到我醒来按主页按钮启动电话我试图在info.plist中添加“必需的背景模式”-“应用程序注册位置更新”键,但这没有任何意义......CLLocationManager委托(delegate)设置为AppDelegate。即使设备处于sleep状态,我需要做什么才能注册位置更新?提前致谢